export const FONT_SIZE_TOKEN_LIST = [
  { label: '--td-font-size-link-small' },
  { label: '--td-font-size-link-medium' },
  { label: '--td-font-size-link-large' },
  { label: '--td-font-size-mark-small', isBold: true },
  { label: '--td-font-size-mark-medium', isBold: true },
  { label: '--td-font-size-body-small' },
  { label: '--td-font-size-body-medium' },
  { label: '--td-font-size-body-large' },
  { label: '--td-font-size-title-small', isBold: true },
  { label: '--td-font-size-title-medium', isBold: true },
  { label: '--td-font-size-title-large', isBold: true },
  { label: '--td-font-size-headline-small', isBold: true },
  { label: '--td-font-size-headline-medium', isBold: true },
  { label: '--td-font-size-headline-large', isBold: true },
  { label: '--td-font-size-display-medium', isBold: true },
  { label: '--td-font-size-display-large', isBold: true },
];

export const FONT_SIZE_STEPS = {
  1: [
    { name: '--td-font-size-link-small', value: '12px' },
    { name: '--td-font-size-link-medium', value: '13px' },
    { name: '--td-font-size-link-large', value: '14px' },
    { name: '--td-font-size-mark-small', value: '12px' },
    { name: '--td-font-size-mark-medium', value: '13px' },
    { name: '--td-font-size-body-small', value: '12px' },
    { name: '--td-font-size-body-medium', value: '13px' },
    { name: '--td-font-size-body-large', value: '14px' },
    { name: '--td-font-size-title-small', value: '13px' },
    { name: '--td-font-size-title-medium', value: '14px' },
    { name: '--td-font-size-title-large', value: '16px' },
    { name: '--td-font-size-headline-small', value: '21px' },
    { name: '--td-font-size-headline-medium', value: '24px' },
    { name: '--td-font-size-headline-large', value: '28px' },
    { name: '--td-font-size-display-medium', value: '36px' },
    { name: '--td-font-size-display-large', value: '48px' },
  ], // 超小号
  2: [
    { name: '--td-font-size-link-small', value: '12px' },
    { name: '--td-font-size-link-medium', value: '13px' },
    { name: '--td-font-size-link-large', value: '15px' },
    { name: '--td-font-size-mark-small', value: '12px' },
    { name: '--td-font-size-mark-medium', value: '13px' },
    { name: '--td-font-size-body-small', value: '12px' },
    { name: '--td-font-size-body-medium', value: '13px' },
    { name: '--td-font-size-body-large', value: '15px' },
    { name: '--td-font-size-title-small', value: '13px' },
    { name: '--td-font-size-title-medium', value: '15px' },
    { name: '--td-font-size-title-large', value: '17px' },
    { name: '--td-font-size-headline-small', value: '22px' },
    { name: '--td-font-size-headline-medium', value: '25px' },
    { name: '--td-font-size-headline-large', value: '31px' },
    { name: '--td-font-size-display-medium', value: '40px' },
    { name: '--td-font-size-display-large', value: '52px' },
  ], // 小号
  3: [
    { name: '--td-font-size-link-small', value: '12px' },
    { name: '--td-font-size-link-medium', value: '14px' },
    { name: '--td-font-size-link-large', value: '16px' },
    { name: '--td-font-size-mark-small', value: '12px' },
    { name: '--td-font-size-mark-medium', value: '14px' },
    { name: '--td-font-size-body-small', value: '12px' },
    { name: '--td-font-size-body-medium', value: '14px' },
    { name: '--td-font-size-body-large', value: '16px' },
    { name: '--td-font-size-title-small', value: '14px' },
    { name: '--td-font-size-title-medium', value: '16px' },
    { name: '--td-font-size-title-large', value: '18px' },
    { name: '--td-font-size-headline-small', value: '24px' },
    { name: '--td-font-size-headline-medium', value: '28px' },
    { name: '--td-font-size-headline-large', value: '36px' },
    { name: '--td-font-size-display-medium', value: '48px' },
    { name: '--td-font-size-display-large', value: '64px' },
  ], // 默认
  4: [
    { name: '--td-font-size-link-small', value: '13px' },
    { name: '--td-font-size-link-medium', value: '15px' },
    { name: '--td-font-size-link-large', value: '17px' },
    { name: '--td-font-size-mark-small', value: '13px' },
    { name: '--td-font-size-mark-medium', value: '15px' },
    { name: '--td-font-size-body-small', value: '13px' },
    { name: '--td-font-size-body-medium', value: '15px' },
    { name: '--td-font-size-body-large', value: '17px' },
    { name: '--td-font-size-title-small', value: '15px' },
    { name: '--td-font-size-title-medium', value: '17px' },
    { name: '--td-font-size-title-large', value: '19px' },
    { name: '--td-font-size-headline-small', value: '25px' },
    { name: '--td-font-size-headline-medium', value: '29px' },
    { name: '--td-font-size-headline-large', value: '37px' },
    { name: '--td-font-size-display-medium', value: '49px' },
    { name: '--td-font-size-display-large', value: '65px' },
  ], // 大号
  5: [
    { name: '--td-font-size-link-small', value: '14px' },
    { name: '--td-font-size-link-medium', value: '17px' },
    { name: '--td-font-size-link-large', value: '20px' },
    { name: '--td-font-size-mark-small', value: '14px' },
    { name: '--td-font-size-mark-medium', value: '17px' },
    { name: '--td-font-size-body-small', value: '14px' },
    { name: '--td-font-size-body-medium', value: '17px' },
    { name: '--td-font-size-body-large', value: '20px' },
    { name: '--td-font-size-title-small', value: '17px' },
    { name: '--td-font-size-title-medium', value: '20px' },
    { name: '--td-font-size-title-large', value: '20px' },
    { name: '--td-font-size-headline-small', value: '32px' },
    { name: '--td-font-size-headline-medium', value: '38px' },
    { name: '--td-font-size-headline-large', value: '47px' },
    { name: '--td-font-size-display-medium', value: '59px' },
    { name: '--td-font-size-display-large', value: '74px' },
  ], // 特大号
};

export const FONT_SIZE_OPTIONS = [
  { label: '超小号', enLabel: 'mini', value: 1 },
  { label: '小号', enLabel: 'small', value: 2 },
  { label: '默认', enLabel: 'default', value: 3 },
  { label: '大号', enLabel: 'large', value: 4 },
  { label: '特大号', enLabel: 'max', value: 5 },
  { label: '自定义', enLabel: 'customized', value: 6, disabled: true },
];

export const FONT_SIZE_LABELS = Object.fromEntries(FONT_SIZE_OPTIONS.map((item, index) => [index + 1, item.label]));

export const FONT_COLOR_TOKEN_MAP = [
  { name: '--td-text-color-primary', from: '--td-font-gray-1' },
  { name: '--td-text-color-secondary', from: '--td-font-gray-2' },
  { name: '--td-text-color-placeholder', from: '--td-font-gray-3' },
  { name: '--td-text-color-disabled', from: '--td-font-gray-4' },
  { name: '--td-text-color-anti', value: '#fff' },
  { name: '--td-text-color-brand', from: '--td-brand-color' },
  { name: '--td-text-color-link', from: '--td-brand-color' },
];
